package weaver.aiyh_pcn.async_organization.model;

import org.jetbrains.annotations.NotNull;

/**
 * @author EBU7-dev1-ayh
 * @create 2021/7/20 0020 17:20
 * 岗位实体类
 */


public class Position implements Comparable<Position>{
	/**岗位id*/
	private long JOBCODEID;
	/**岗位编号*/
	private String JOBCODE;
	/**岗位描述*/
	private String JOBFUNCTION;
	/**上级岗位id 为空则表示该岗位无上级*/
	private long SUPERIORJOBCODEID;
	private long POSITIONOCCUPIED;
	private String Company_Code;


	public String getValue(String fieldName){
		if("JOBCODEID".equals(fieldName)){
			return String.valueOf(this.getJOBCODEID());
		}
		if("JOBCODE".equals(fieldName)){
			return this.getJOBCODE();
		}
		if("JOBFUNCTION".equals(fieldName)){
			return this.getJOBFUNCTION();
		}
		if("SUPERIORJOBCODEID".equals(fieldName)){
			return String.valueOf(this.getSUPERIORJOBCODEID());
		}
		if("POSITIONOCCUPIED".equals(fieldName)){
			return String.valueOf(this.getPOSITIONOCCUPIED());
		}
		if("Company_Code".equals(fieldName)){
			return this.getCompany_Code();
		}
		return null;
	}

	public Position() {
	}

	public Position(long JOBCODEID, String JOBCODE, String JOBFUNCTION, long SUPERIORJOBCODEID, long POSITIONOCCUPIED, String company_Code) {
		this.JOBCODEID = JOBCODEID;
		this.JOBCODE = JOBCODE;
		this.JOBFUNCTION = JOBFUNCTION;
		this.SUPERIORJOBCODEID = SUPERIORJOBCODEID;
		this.POSITIONOCCUPIED = POSITIONOCCUPIED;
		this.Company_Code = company_Code;
	}



	public int getJOBCODEID() {
		return (int)JOBCODEID;
	}

	public void setJOBCODEID(long JOBCODEID) {
		this.JOBCODEID = JOBCODEID;
	}

	public String getJOBCODE() {
		return JOBCODE;
	}

	public void setJOBCODE(String JOBCODE) {
		this.JOBCODE = JOBCODE;
	}

	public String getJOBFUNCTION() {
		return JOBFUNCTION;
	}

	public void setJOBFUNCTION(String JOBFUNCTION) {
		this.JOBFUNCTION = JOBFUNCTION;
	}

	public long getSUPERIORJOBCODEID() {
		return SUPERIORJOBCODEID;
	}

	public void setSUPERIORJOBCODEID(long SUPERIORJOBCODEID) {
		this.SUPERIORJOBCODEID = SUPERIORJOBCODEID;
	}

	public long getPOSITIONOCCUPIED() {
		return POSITIONOCCUPIED;
	}

	public void setPOSITIONOCCUPIED(long POSITIONOCCUPIED) {
		this.POSITIONOCCUPIED = POSITIONOCCUPIED;
	}

	public String getCompany_Code() {
		return Company_Code;
	}

	public void setCompany_Code(String company_Code) {
		Company_Code = company_Code;
	}

	@Override
	public int compareTo(@NotNull Position o) {
		return new Long(this.SUPERIORJOBCODEID - o.getSUPERIORJOBCODEID()).intValue();
	}

	@Override
	public String toString() {
		return "Position{" +
				"JOBCODEID=" + JOBCODEID +
				", JOBCODE='" + JOBCODE + '\'' +
				", JOBFUNCTION='" + JOBFUNCTION + '\'' +
				", SUPERIORJOBCODEID=" + SUPERIORJOBCODEID +
				", POSITIONOCCUPIED=" + POSITIONOCCUPIED +
				", Company_Code='" + Company_Code + '\'' +
				'}';
	}
}
